Sound Bit-Precise Numerical Domains

نویسندگان

  • Tushar Sharma
  • Thomas W. Reps
چکیده

This paper tackles the challenge of creating a numerical abstract domain that can identify affine-inequality invariants while handling overflow in arithmetic operations over bit-vector data-types. The paper describes the design and implementation of a class of new abstract domains, called the Bit-Vector-Sound, Finite-Disjunctive (BVSFD) domains. We introduce a framework that takes an abstract domain A that is sound with respect to mathematical integers and creates an abstract domain BVS(A) whose operations and abstract transformers are sound with respect to machine integers. We also describe how to create abstract transformers for BVS(A) that are sound with respect to machine arithmetic. The abstract transformers make use of an operation WRAP(av, v)—where av ∈ A and v is a set of program variables—which performs wraparound in av for the variables in v. To reduce the loss of precision from WRAP, we use finite disjunctions of BVS(A) values. The constructor of finite-disjunctive domains, FDk(·), is parameterized by k, the maximum number of disjunctions allowed. We instantiate the BVS(FDk) framework using the abstract domain of polyhedra and octagons. Our experiments show that the analysis can prove 25% of the assertions in the SVCOMP loop benchmarks with k = 6, and 88% of the array-bounds checks in the SVCOMP array benchmarks with k = 4.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Seminar: Aktuelle Themen aus der Theorie der Programmierung Numerical Domains A Practical Construction for Decomposing Numerical Abstract Domains

Domains Gagandeep Singh, Markus Püschel, Martin Vechev Numerical abstract domains such as Polyhedra, Octahedron, Octagon, Interval, and others are an essential component of static program analysis. The choice of domain offers a performance/precision tradeoff ranging from cheap and imprecise (Interval) to expensive and precise (Polyhedra). Recently, significant speedups were achieved for Octagon...

متن کامل

Synthesizing Safe Bit-Precise Invariants

Bit-precise software verification is an important and difficult problem. While there has been an amazing progress in SAT solving, Satisfiability Modulo Theory of Bit Vectors, and bit-precise Bounded Model Checking, proving bit-precise safety, i.e. synthesizing a safe inductive invariant, remains a challenge. Although the problem is decidable and is reducible to propositional safety by bit-blast...

متن کامل

A Modular Methodology for Automatic Static Parametric WCET Analysis

In order to overcome some of the inherent pessimism of traditional static analysis, we propose a method for parametric WCET analysis expressing the WorstCase Execution Time (WCET) of a program as an expression in terms of the input data of a program. Besides giving more information about the execution time behaviour of the program, this also has benefits in component based development where reu...

متن کامل

From Array Domains to Abstract Interpretation Under Store-Buffer-Based Memory Models

We address the problem of verifying concurrent programs under store-buffer-based weakly consistent memory models, such as TSO or PSO. Using the abstract interpretation framework, we adapt existing domains for arrays to model store buffers and obtain a sound abstraction of program states (including the case of programs with infinite state space) parameterised by a numerical domain. Whereas the u...

متن کامل

Weakly Relational Numerical Abstract Domains

Interpretation Abstract Interpretation: General theory of sound approximations of semantics [Cousot78]. Numerical Abstract Domain: • computer-representable set D of abstract values, together with: • a concretisation: γ: D → P(V → I), • a partial order: ⊑, ⊥, ⊤, • sound, effective abstract transfer functions {| I |}: ({| I |} ◦ γ)(X ) ⊆ (γ ◦ {| I |})(X ), a sound, effective abstract union ∪: γ(X...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2017